a243539d2733acea4bc338bfd4cfcdc86cbde01e,algoliasearch/src/testOffline/java/com/algolia/search/saas/OfflineIndexTest.java,OfflineIndexTest,testBrowse,#,236

Before Change


    public void testBrowse() throws Exception {
        final CountDownLatch signal = new CountDownLatch(1);
        final OfflineIndex index = client.getOfflineIndex(Helpers.getMethodName());
        index.addObjectsAsync(objects.values(), new CompletionHandler() {
            @Override
            public void requestCompleted(JSONObject content, AlgoliaException error) {
                assertNull(error);
                index.browseAsync(new Query().setHitsPerPage(1), new CompletionHandler() {
                    @Override
                    public void requestCompleted(JSONObject content, AlgoliaException error) {
                        assertNotNull(content);
                        String cursor = content.optString("cursor", null);
                        assertNotNull(cursor);
                        index.browseFromAsync(cursor, new CompletionHandler() {
                            @Override
                            public void requestCompleted(JSONObject content, AlgoliaException error) {
                                assertNotNull(content);
                                assertNull(content.optString("cursor", null));
                                signal.countDown();
                            }
                        });
                    }
                });
            }
        });
        assertTrue("No callback was called", signal.await(waitTimeout, TimeUnit.SECONDS));
    }

After Change


    public void testBrowse() throws Exception {
        final CountDownLatch signal = new CountDownLatch(1);
        final OfflineIndex index = client.getOfflineIndex(Helpers.getMethodName());
        index.beginTransaction();
        index.saveObjectsAsync(objects.values(), new CompletionHandler() {
            @Override
            public void requestCompleted(JSONObject content, AlgoliaException error) {
                assertNull(error);
                index.commitTransactionAsync(new CompletionHandler() {
                    @Override
                    public void requestCompleted(JSONObject content, AlgoliaException error) {
                        assertNull(error);
                        index.browseAsync(new Query().setHitsPerPage(1), new CompletionHandler() {
                            @Override
                            public void requestCompleted(JSONObject content, AlgoliaException error) {
                                assertNotNull(content);
                                String cursor = content.optString("cursor", null);
                                assertNotNull(cursor);
                                index.browseFromAsync(cursor, new CompletionHandler() {
                                    @Override
                                    public void requestCompleted(JSONObject content, AlgoliaException error) {
                                        assertNotNull(content);
                                        assertNull(content.optString("cursor", null));
                                        signal.countDown();
                                    }
                                });
                            }
                        });
                    }
                });
            }
        });
        assertTrue("No callback was called", signal.await(waitTimeout, TimeUnit.SECONDS));
    }